package com.ostrich.cloud.ostrichOrderService.infra.model;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author Lucas
 * @since 2022-10-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="Order1对象", description="订单表")
public class Order1 implements Serializable {

    private static final long serialVersionUID=1L;

    @TableId(value = "order_id", type = IdType.AUTO)
    private Integer orderId;

    @ApiModelProperty(value = "订单编号")
    private Long orderNo;

    @ApiModelProperty(value = "用户id")
    private Integer customerId;

    @ApiModelProperty(value = "订单状态 未支付 UNPAY|| 已支付PAY|| 未取货 UNSHIPPED||已发货 SHIPPED||已完成FINISHED||已过期 EXPIRED")
    private String status;

    @ApiModelProperty(value = "订单总价")
    private BigDecimal totalAmount;

    @ApiModelProperty(value = "拼团id 为空就是正常订单")
    private Integer groupbySn;

    @ApiModelProperty(value = "优惠券id 0为没使用优惠")
    private Integer couponId;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "0为钱包支付 1为支付宝支付")
    private Integer payType;

    @ApiModelProperty(value = "支付时间")
    private Date payTime;

    @ApiModelProperty(value = "取货方式 0自提 ||1 配送")
    private Integer shipType;

    @ApiModelProperty(value = "实收金额")
    private BigDecimal payPrice;

    @ApiModelProperty(value = "抵扣金额")
    private BigDecimal deductionPrice;

    @ApiModelProperty(value = "快递单号id")
    private Integer deliveryId;

    @ApiModelProperty(value = "骑手id")
    private Integer riderId;

    @ApiModelProperty(value = "门店id ")
    private Integer businessmanId;

    @ApiModelProperty(value = "地址id 地址为0自取")
    private Integer customerLocationId;

    @ApiModelProperty(value = "备注")
    private String notes;

    @ApiModelProperty(value = "二维码")
    private String qrCode;


}
